home *** CD-ROM | disk | FTP | other *** search
- /* extract a digit d of a number n*/
-
- #include "defs.h"
-
- int am_extract(int n, int d)
- {
- int i;
- int j = 0;
-
-
- if(n>999999999)
- return n;
- if(d<0)
- d = -d;
- if(d>9){
- for(i = 0; i < 9; i++)
- while(d >= _am_asciiconv[i])
- d -= _am_asciiconv[i];
- while(d >= _am_asciiconv[i])
- {
- d -= _am_asciiconv[i];
- j++;
- }
-
- d=j;
- j=0;
- }
-
-
- if(n<0){
- n = -n;
-
- for(i = 0; i < 10 - d; i++)
- while(n >= _am_asciiconv[i])
- n -= _am_asciiconv[i];
- while(n >= _am_asciiconv[i])
- {
- n -= _am_asciiconv[i];
- j++;
- }
-
- return -j;
- }
- else{
- for(i = 0; i < 10 - d; i++)
- while(n >= _am_asciiconv[i])
- n -= _am_asciiconv[i];
- while(n >= _am_asciiconv[i])
- {
- n -= _am_asciiconv[i];
- j++;
- }
-
- return j;
- }
- }
-